package cn.com.jinhao.provider.business.entity;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import javax.persistence.Column;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * HotLine
 * <p>Description: 派单实体类</p>
 *
 * @author ShaneMew
 * @version 1.0
 * @date 2019/10/18
 * @see ProcedureBase
 * @since 2019-10-18
 */

@ToString
@Data
@Table(name = "BT$EVAS")
public class Dispatch extends ProcedureBase implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 承办
     */
    @Column(name = "evas")
    private String evas;

    /**
     * 派单单位编码
     */
    @Column(name = "ST$DEPT_CODE_A")
    private String stDeptCodeA;

    /**
     * 派单单位
     */
    @Column(name = "ST$DEPT_DEPT_A")
    private String stDeptDeptA;

    /**
     * 派单人编码
     */
    @Column(name = "ST$OPER_CODE_A")
    private String stOperCodeA;

    /**
     * 派单人
     */
    @Column(name = "ST$OPER_OPER_A")
    private String stOperOperA;

    /**
     * 承办单位编码
     */
    @Column(name = "ST$DEPT_CODE_B")
    private String stDeptCodeB;

    /**
     * 承办单位
     */
    @Column(name = "ST$DEPT_DEPT_B")
    private String stDeptDeptB;

    /**
     * 承办人编码
     */
    @Column(name = "ST$OPER_CODE_B")
    private String stOperCodeB;

    /**
     * 承办人
     */
    @Column(name = "ST$OPER_OPER_B")
    private String stOperOperB;

    /**
     * 承办联系人编码
     */
    @Column(name = "ST$TLBK_CODE")
    private String stTlbkCode;

    /**
     * 承办联系人
     */
    @Column(name = "ST$TLBK_TLBK")
    private String stTlbkTlbk;

    /**
     * 派单途径编码
     */
    @Column(name = "BD$ASWY_CODE")
    private String dispatchWayCode;

    /**
     * 派单途径
     */
    @Column(name = "BD$ASWY_ASWY")
    private String dispatchWay;

    /**
     * 紧急程度编码
     */
    @Column(name = "BD$UGLV_CODE")
    private String urgencyLevelCode;

    /**
     * 紧急程度
     */
    @Column(name = "BD$UGLV_UGLV")
    private String urgencyLevel;

    /**
     * 附加通知号码
     */
    @Column(name = "atph")
    private String attentionPhone;

    /**
     * 超期日期
     */
    @Column(name = "epdt")
    private Date expireDatetime;

    /**
     * 主办单位
     */
    @Column(name = "isld")
    private Short isld = 0;

    /**
     * 派单日期
     */
    @Column(name = "asdt")
    private Date dispatchDatetime;

    /**
     * 是否接单
     */
    @Column(name = "isac")
    private Short isAccept;

    /**
     * 是否催办
     */
    @Column(name = "isug")
    private Short isUrge = 0;

    /**
     * 是否督办
     */
    @Column(name = "issp")
    private Short isSerAndHandle = 0;

    /**
     * 是否延期
     */
    @Column(name = "isdl")
    private Short isDelay = 0;

    /**
     * 是否反馈
     */
    @Column(name = "isfb")
    private Short isFeedback = 0;

    /**
     * 是否办结
     */
    @Column(name = "isfs")
    private Short isFinish = 0;

    /**
     * 是否超期
     */
    @Column(name = "isep")
    private Short isEpire = 0;

    /**
     * 是否回访
     */
    @Column(name = "isvs")
    private Short isVisit = 0;

    /**
     * 是否重派单
     */
    @Column(name = "isrp")
    private Short isReplyDispatch = 0;

    /**
     * 是否撤单
     */
    @Column(name = "isrv")
    private Short isCancel = 0;

    /**
     * 是否子单
     */
    @Column(name = "issb")
    private Short isSub = 0;

    /**
     * 转发层级
     */
    @Column(name = "fwhc")
    private Short forwardLevel;

    /**
     * 超时处理
     */
    @Column(name = "ovtl")
    private Short timeoutHandling;

    /**
     * 已读
     */
    @Column(name = "read")
    private Short read = 0;

    /**
     * 登录帐号数组
     */
    @Column(name = "rch9")
    @ApiModelProperty(value = "登录帐号数组")
    private String rch9;

    /**
     * 是否转派
     */
    @Column(name = "rnb0")
    @ApiModelProperty(value = "是否转派")
    private BigDecimal rnb0;

    /**
     * 是否有反馈
     */
    @Column(name = "rnb1")
    @ApiModelProperty(value = "是否有反馈")
    private BigDecimal rnb1;


    /**
     * 派单内容
     */
    @Column(name = "asct")
    @ApiModelProperty(value = "派单内容")
    private String dispatchDesc;

    @Transient
    @ApiModelProperty(value = "附件信息")
    private List<Attach> attachList;
}
